[INFO] fetching crate libaster 1.2.1...
[INFO] checking libaster-1.2.1 against master#43a4909ee98ed4d006d9d773f5d94dc58e34f846 for pr-157576
[INFO] extracting crate libaster 1.2.1 into /workspace/builds/worker-7-tc1/source
[INFO] started tweaking crates.io crate libaster 1.2.1
[INFO] finished tweaking crates.io crate libaster 1.2.1
[INFO] tweaked toml for crates.io crate libaster 1.2.1 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate libaster 1.2.1 on toolchain 43a4909ee98ed4d006d9d773f5d94dc58e34f846
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+43a4909ee98ed4d006d9d773f5d94dc58e34f846" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+43a4909ee98ed4d006d9d773f5d94dc58e34f846" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 292 packages to latest compatible versions
[INFO] [stderr]       Adding actix-rt v0.2.6 (available: v2.11.0)
[INFO] [stderr]       Adding actix-web v1.0.9 (available: v4.13.0)
[INFO] [stderr]       Adding aho-corasick v0.7.20 (available: v1.1.4)
[INFO] [stderr]       Adding assert2 v0.1.2 (available: v0.4.0)
[INFO] [stderr]       Adding bitflags v1.3.2 (available: v2.13.0)
[INFO] [stderr]       Adding btoi v0.4.3 (available: v0.5.0)
[INFO] [stderr]       Adding bytes v0.4.12 (available: v1.12.0)
[INFO] [stderr]       Adding clap v2.34.0 (available: v4.6.1)
[INFO] [stderr]       Adding criterion v0.2.11 (available: v0.8.2)
[INFO] [stderr]       Adding env_logger v0.6.2 (available: v0.11.10)
[INFO] [stderr]       Adding futures v0.1.31 (available: v0.3.32)
[INFO] [stderr]       Adding hashbrown v0.3.1 (available: v0.17.1)
[INFO] [stderr]       Adding inotify v0.8.3 (available: v0.11.2)
[INFO] [stderr]       Adding itoa v0.4.8 (available: v1.0.18)
[INFO] [stderr]       Adding md5 v0.6.1 (available: v0.8.0)
[INFO] [stderr]       Adding prometheus v0.7.0 (available: v0.14.0)
[INFO] [stderr]       Adding rand v0.7.3 (available: v0.10.1)
[INFO] [stderr]       Adding sysinfo v0.9.6 (available: v0.39.3)
[INFO] [stderr]       Adding tokio v0.1.22 (available: v1.52.3)
[INFO] [stderr]       Adding toml v0.4.10 (available: v1.1.2+spec-1.1.0)
[INFO] [stderr]       Adding wasi v0.10.0+wasi-snapshot-preview1 (available: v0.10.2+wasi-snapshot-preview1)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+43a4909ee98ed4d006d9d773f5d94dc58e34f846" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded sysinfo v0.9.6
[INFO] [stderr]   Downloaded inotify v0.8.3
[INFO] [stderr]   Downloaded doc-comment v0.3.4
[INFO] [stderr]   Downloaded get_if_addrs v0.5.3
[INFO] [stderr]   Downloaded prometheus v0.7.0
[INFO] [stderr]   Downloaded btoi v0.4.3
[INFO] [stderr]   Downloaded assert2-macros v0.1.0
[INFO] [stderr]   Downloaded get_if_addrs-sys v0.1.1
[INFO] [stderr]   Downloaded c_linked_list v1.1.1
[INFO] [stderr]   Downloaded assert2 v0.1.2
[INFO] [stderr]   Downloaded pin-project-lite v0.1.12
[INFO] [stderr]   Downloaded yansi v0.5.1
[INFO] [stderr]   Downloaded hashbrown v0.3.1
[INFO] [stderr]   Downloaded aho-corasick v0.7.20
[INFO] [stderr]   Downloaded tokio v0.2.25
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3e793bdf10248eb2ddbd6b0faebed8155c11b4589982e2893733958d93e8d540" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 73e31dd168e6fdfaac388f663de7939d883a341649f1190440a32398a732e65b
[INFO] running `Command { std: "docker" "start" "73e31dd168e6fdfaac388f663de7939d883a341649f1190440a32398a732e65b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "73e31dd168e6fdfaac388f663de7939d883a341649f1190440a32398a732e65b" "/opt/rustwide/cargo-home/bin/cargo" "+43a4909ee98ed4d006d9d773f5d94dc58e34f846" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "73e31dd168e6fdfaac388f663de7939d883a341649f1190440a32398a732e65b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "73e31dd168e6fdfaac388f663de7939d883a341649f1190440a32398a732e65b" "/opt/rustwide/cargo-home/bin/cargo" "+43a4909ee98ed4d006d9d773f5d94dc58e34f846" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling memoffset v0.5.6
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking net2 v0.2.39
[INFO] [stderr]     Checking tokio-sync v0.1.8
[INFO] [stderr]    Compiling parking_lot_core v0.6.3
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling proc-macro-hack v0.5.20+deprecated
[INFO] [stderr]    Compiling syn v2.0.118
[INFO] [stderr]    Compiling assert2-macros v0.1.0
[INFO] [stderr]     Checking pin-project-lite v0.1.12
[INFO] [stderr]     Checking clap v2.34.0
[INFO] [stderr]     Checking bytes v0.4.12
[INFO] [stderr]     Checking inotify-sys v0.1.5
[INFO] [stderr]     Checking c_linked_list v1.1.1
[INFO] [stderr]     Checking env_logger v0.6.2
[INFO] [stderr]     Checking toml v0.4.10
[INFO] [stderr]     Checking aho-corasick v0.7.20
[INFO] [stderr]     Checking md5 v0.6.1
[INFO] [stderr]     Checking get_if_addrs v0.5.3
[INFO] [stderr]     Checking hashbrown v0.3.1
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking smallvec v0.6.14
[INFO] [stderr]     Checking mio v0.6.23
[INFO] [stderr]     Checking itoa v0.4.8
[INFO] [stderr]     Checking yansi v0.5.1
[INFO] [stderr]     Checking tokio-io v0.1.13
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking tokio-codec v0.1.2
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking tokio-executor v0.1.10
[INFO] [stderr]     Checking crossbeam-queue v0.2.3
[INFO] [stderr]     Checking tokio-timer v0.2.13
[INFO] [stderr]     Checking tokio-current-thread v0.1.7
[INFO] [stderr]     Checking crossbeam-deque v0.7.4
[INFO] [stderr]     Checking btoi v0.4.3
[INFO] [stderr]     Checking tokio-reactor v0.1.12
[INFO] [stderr]     Checking mio-uds v0.6.8
[INFO] [stderr]     Checking tokio v0.2.25
[INFO] [stderr]     Checking tokio-threadpool v0.1.18
[INFO] [stderr]     Checking tokio-udp v0.1.6
[INFO] [stderr]     Checking tokio-tcp v0.1.4
[INFO] [stderr]     Checking tokio-uds v0.2.7
[INFO] [stderr]     Checking tokio-fs v0.1.7
[INFO] [stderr]     Checking tokio v0.1.22
[INFO] [stderr]     Checking inotify v0.8.3
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]     Checking assert2 v0.1.2
[INFO] [stderr]     Checking failure v0.1.8
[INFO] [stderr]     Checking criterion v0.2.11
[INFO] [stderr]     Checking libaster v1.2.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition name: `linux`
[INFO] [stdout]    --> src/com.rs:291:11
[INFO] [stdout]     |
[INFO] [stdout] 291 | #[cfg(not(linux))]
[INFO] [stdout]     |           ^^^^^ help: found config with similar value: `target_os = "linux"`
[INFO] [stdout]     |
[INFO] [stdout]     = help: expected names are: `docsrs`, `feature`, and `test` and 32 more
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(linux)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(linux)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `linux`
[INFO] [stdout]    --> src/com.rs:301:7
[INFO] [stdout]     |
[INFO] [stdout] 301 | #[cfg(linux)]
[INFO] [stdout]     |       ^^^^^ help: found config with similar value: `target_os = "linux"`
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(linux)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(linux)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]    --> src/protocol/redis/resp.rs:509:38
[INFO] [stdout]     |
[INFO] [stdout] 509 |     static ref FINDER: AhoCorasick = { AhoCorasick::new(PATTERNS) };
[INFO] [stdout]     |                                      ^^                          ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_braces)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these braces
[INFO] [stdout]     |
[INFO] [stdout] 509 -     static ref FINDER: AhoCorasick = { AhoCorasick::new(PATTERNS) };
[INFO] [stdout] 509 +     static ref FINDER: AhoCorasick = AhoCorasick::new(PATTERNS) ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `linux`
[INFO] [stdout]    --> src/com.rs:291:11
[INFO] [stdout]     |
[INFO] [stdout] 291 | #[cfg(not(linux))]
[INFO] [stdout]     |           ^^^^^ help: found config with similar value: `target_os = "linux"`
[INFO] [stdout]     |
[INFO] [stdout]     = help: expected names are: `docsrs`, `feature`, and `test` and 32 more
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(linux)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(linux)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `linux`
[INFO] [stdout]    --> src/com.rs:301:7
[INFO] [stdout]     |
[INFO] [stdout] 301 | #[cfg(linux)]
[INFO] [stdout]     |       ^^^^^ help: found config with similar value: `target_os = "linux"`
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(linux)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(linux)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]    --> src/protocol/redis/resp.rs:509:38
[INFO] [stdout]     |
[INFO] [stdout] 509 |     static ref FINDER: AhoCorasick = { AhoCorasick::new(PATTERNS) };
[INFO] [stdout]     |                                      ^^                          ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_braces)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these braces
[INFO] [stdout]     |
[INFO] [stdout] 509 -     static ref FINDER: AhoCorasick = { AhoCorasick::new(PATTERNS) };
[INFO] [stdout] 509 +     static ref FINDER: AhoCorasick = AhoCorasick::new(PATTERNS) ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/lib.rs:35:28
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let watch_file = config.clone();
[INFO] [stdout]    |                            ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/com.rs:19:17
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_AsError`
[INFO] [stdout] 20 | pub enum AsError {
[INFO] [stdout]    |          ------- `AsError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/com.rs:19:17
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Display` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_AsError`
[INFO] [stdout] 20 | pub enum AsError {
[INFO] [stdout]    |          ------- `AsError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/protocol/redis.rs:157:19
[INFO] [stdout]     |
[INFO] [stdout] 157 |     pub fn borrow(&self) -> Ref<Command> {
[INFO] [stdout]     |                   ^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 157 |     pub fn borrow(&self) -> Ref<'_, Command> {
[INFO] [stdout]     |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/protocol/redis.rs:161:23
[INFO] [stdout]     |
[INFO] [stdout] 161 |     pub fn borrow_mut(&self) -> RefMut<Command> {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 161 |     pub fn borrow_mut(&self) -> RefMut<'_, Command> {
[INFO] [stdout]     |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/protocol/redis/resp.rs:486:17
[INFO] [stdout]     |
[INFO] [stdout] 486 |     pub fn iter(&self) -> MessageIter {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 486 |     pub fn iter(&self) -> MessageIter<'_> {
[INFO] [stdout]     |                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]   --> src/proxy/cluster/init.rs:99:21
[INFO] [stdout]    |
[INFO] [stdout] 99 |                     std::mem::drop(sender); // must drop when the while state is done;
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^------^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    argument has type `&mut futures::unsync::mpsc::Sender<redis::Cmd>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dropping_references)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]    |
[INFO] [stdout] 99 -                     std::mem::drop(sender); // must drop when the while state is done;
[INFO] [stdout] 99 +                     let _ = sender; // must drop when the while state is done;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/lib.rs:35:28
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let watch_file = config.clone();
[INFO] [stdout]    |                            ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/com.rs:19:17
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_AsError`
[INFO] [stdout] 20 | pub enum AsError {
[INFO] [stdout]    |          ------- `AsError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/com.rs:19:17
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Display` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_AsError`
[INFO] [stdout] 20 | pub enum AsError {
[INFO] [stdout]    |          ------- `AsError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/protocol/redis.rs:157:19
[INFO] [stdout]     |
[INFO] [stdout] 157 |     pub fn borrow(&self) -> Ref<Command> {
[INFO] [stdout]     |                   ^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 157 |     pub fn borrow(&self) -> Ref<'_, Command> {
[INFO] [stdout]     |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/protocol/redis.rs:161:23
[INFO] [stdout]     |
[INFO] [stdout] 161 |     pub fn borrow_mut(&self) -> RefMut<Command> {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 161 |     pub fn borrow_mut(&self) -> RefMut<'_, Command> {
[INFO] [stdout]     |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/protocol/redis/resp.rs:486:17
[INFO] [stdout]     |
[INFO] [stdout] 486 |     pub fn iter(&self) -> MessageIter {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 486 |     pub fn iter(&self) -> MessageIter<'_> {
[INFO] [stdout]     |                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]   --> src/proxy/cluster/init.rs:99:21
[INFO] [stdout]    |
[INFO] [stdout] 99 |                     std::mem::drop(sender); // must drop when the while state is done;
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^------^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    argument has type `&mut futures::unsync::mpsc::Sender<redis::Cmd>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dropping_references)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]    |
[INFO] [stdout] 99 -                     std::mem::drop(sender); // must drop when the while state is done;
[INFO] [stdout] 99 +                     let _ = sender; // must drop when the while state is done;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 16.43s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: criterion v0.2.11
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "73e31dd168e6fdfaac388f663de7939d883a341649f1190440a32398a732e65b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "73e31dd168e6fdfaac388f663de7939d883a341649f1190440a32398a732e65b", kill_on_drop: false }`
[INFO] [stdout] 73e31dd168e6fdfaac388f663de7939d883a341649f1190440a32398a732e65b
